package com.LatitudeYao;
import java.lang.*;
import java.lang.reflect.Constructor;
/**
 * Created by GTS on 2017/7/20.
 */
public class TestReflect {
    int i1=0;

    TestReflect(){}
    TestReflect(int i1){
        this.i1=i1;
    }

    public static void main(String[] args) throws Exception {

        Class  class1 = null;

        Class<?> class2 = null;

        Class<?> class3 = null;


        // 一般采用这种形式

        class1 = Class.forName("com.LatitudeYao.TestReflect");//forName是一个静态方法
        class2 = new TestReflect().getClass();
        class3 = TestReflect.class;
        System.out.println("类名称 1  " + class1.getName());
        System.out.println("类名称2   " + class2.getName());
        System.out.println("类名称 3  " + class3.getName());
        //通过反射机制实例化一个类的对象,并且对成员变量负值
        TestReflect tr = (TestReflect)class1.newInstance();
        tr.i1=2;
        System.out.println(tr.i1);



    }
}
